package de.vibes.controller;

import java.io.File;

import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.XMLConfiguration;

/**
 * Diese Klasse liefert Methoden um auf die Konfiguration der Anwendung
 * zuzugreifen.
 * 
 * @author Igor Toker.
 * 
 */
public class Configuration {

	/**
	 * Konfigurationsdatei.
	 */
	private static final String CONFIG_FILE = "/home/itoker/MOOD-CONFIG/mood-configuration.xml";

	/************************************************************************
	 * 
	 * @return Configuration
	 * @throws ConfigurationException
	 *             - wenn die Konfigurationsdatei nicht gefunden werden kann.
	 *************************************************************************/
	public static org.apache.commons.configuration.Configuration getConfig()
			throws ConfigurationException {
		File configFile = new File(CONFIG_FILE);
		return new XMLConfiguration(configFile.getAbsoluteFile());
	}

	/**************************************************************************
	 * 
	 * @return String - Pfad zu Datei mit DB für die Persistence
	 * @throws ConfigurationException
	 *************************************************************************/
	public static String getDBFilename() throws ConfigurationException {
		org.apache.commons.configuration.Configuration config = getConfig();
		if (config.containsKey("db-filename")) {
			return config.getString("db-filename");
		}
		throw new ConfigurationException("Eintrag db-filename konnte nicht gefunden werden!");
	}

}
